﻿/**
 * 覆盖module.js中同名变量
 * @type String
 */
module.fromId = 'afrom';
module.dialogId = 'adialog';
module.datagrid = 'actiongrid';
module.treeId = 'actiontree';
module.rootUrl = 'action/';
/**
 * 刷新树数据
 * 
 * 覆盖module.js中同名方法
 */
module.reloadTree = function (){
	$('#' + module.treeId).tree('reload');
	$('#AParentid').combotree('reload');
};

/**
 * 打开信息编辑框
 * 
 * 覆盖module.js中同名方法
 */
module.openDialog = function () {
	$('#' + module.fromId).form('clear');
	$('#' + module.fromId).form('reset');
	$('#' + module.dialogId).dialog('open');
	var node = $('#' + module.treeId).tree('getSelected');
	if (node) {
		$('#AParentid').combotree('setValue', node.id);
	}
};

/**
 * 装载表单数据
 * 
 * 覆盖module.js中同名方法
 * 
 * @param data
 *            装载的数据
 */
module.loadForm = function (data) {
	$('#' + module.fromId).form('load', {
		id : data.id,
		AEid:data.a_eid,
		AName : data.text,
		AParentid : data.parentId,
		AUrl : data.a_url,
		AMenu : data.a_menu,
		AStatus : data.a_status,
		ALoging : data.a_loging,
		ASort : data.a_sort,
		AType : data.a_type, 
		AControl : data.a_control,
		ARemarks : data.a_remarks,
		ASystem:data.a_system
	});
};

/**
 * ajax请求
 * 
 * 覆盖module.js中同名方法
 * 
 * @param data
 *            装载的数据
 */
module.ajaxRequest = function (url) {
	Common.Util.sendTreeDataIds(module.treeId, module.datagrid, module.rootUrl + url, function (msg) {
		// 刷新树,在有菜单树的情况下,在此请不要手动刷新数据列表
		// 请参照本模块为菜单树添加onLoadSuccess事件和onSelect事件
		reloadTree();
	});
};
/**
 * 树菜单树选择事件
 * 
 * @param node 节点数据
 */
module.onSelectTree = function (node) {
	module.selectTreeNode = node.id;
	// 判断是否为根节点
	if (!node.id || node.id == -1) {
		// 如果角色Id为空或者为-1则刷新列表
		module.reloadDatagrid();
	} else {
		// getAllChildNodeId函数在tree.js
		//var ids = getAllChildNodeId(this, node);
		var filters = [];
		var chks=$("input[name='atype']:checkbox:checked")
		if (chks.length>0&&chks.length!=3) {
			if (chks.length==1) {
				filters.push(add_condition("and", "等于", "action", "a_type", chks[0].value, "", "number"));
			}else{
				var unchk=$("input[name='atype']:checkbox").each(function(){
					if(!this.checked){
						filters.push(add_condition("and", "不等于", "action", "a_type", this.value, "", "number"));
						}
					});
				
			}
		}
		filters.push(add_condition("and", "", "", "(", "", "", ""));
		filters.push(add_condition("and", "等于", "action", "id", node.id, "", "number"));
		filters.push(add_condition("or", "等于", "action", "a_parentid", node.id, "", "number"));
		filters.push(add_condition("and", "", "", ")", "", "", ""));
		// 判断是否为叶子节点,如果是叶子节点则没有子节点
		/*if ($(this).tree('isLeaf', node.target)) {
			filters.push(add_condition("and", "等于", "action", "id", ids.join(), "", "number"));
		} else {
			filters.push(add_condition("and", "in", "action", "id", ids.join(), "", "string"));
		}*/
		fun_query(module.datagrid, filters);
	}
}
/**
 * 数据查询
 * 
 * 覆盖module.js中同名方法
 */
module.queryDatagrid = function() {
	var actionname = $('#actionname').textbox('getValue');
	var actionurl = $('#actionurl').textbox('getValue');
	var flag = false; // 只有两个参数同时为空才为false
	var filters = [];
	// 判断查询参数是否为空
	if (!Common.Util.isEmpty(actionname)) {
		filters.push(add_condition("and", "包含", "action", "a_name", actionname, "", "string"));
		flag = true;
	}
	if (!Common.Util.isEmpty(actionurl)) {
		filters.push(add_condition("and", "包含", "action", "a_url", actionurl, "", "string"));
		flag = true;
	}

	if (flag) {
		// 查询参数不为空则执行查询
		fun_query(module.datagrid, filters);
		filters = null;
	} else {
		filters = [];
		// 如果查询参数为空则刷新列表
		fun_query(module.datagrid, filters);
	}
};

/**
 * 角色下拉框数据过滤
 * 
 * @param data
 *            过滤的数据
 * @returns 返回过滤后的数据
 */
function roleLoadFilter(data) {
	return data.rows;
}
//数据行格式化
function dataRowFormat(index,row){
	if(row.a_menu){
		//background-color:#6293BB;
		return 'color:#006699;font-width:blod;font-weight: bold;font-family: 微软雅黑 ;';

	}
	
}

function delres(){
	var rows=$('#actiongrid').datagrid('getSelections');	
	if(rows.length==0){
		Common.Util.showMessager({msg:"<b style='color:red;'>请选择数据!</b>"});
		return;
	}
	var ids = new Array();
	for(var i=0;i<rows.length;i++){
		ids.push(rows[i].id);
	}
	 $.messager.confirm('提示', '是否删除所选?', function(r){
         if (r){
        	 $.ajax({
        			type : "post",
        			url : "action/delete.do",
        			data:{ids:ids},
        			dataType:"json",
        			success : function(res) {
        				 if (res.status)  
  	                    {
                      	  $.messager.alert('提示','操作成功','info');
                      	  reloadTree();
                      	  $("#actiongrid").datagrid('reload');
  	                    } 
  	                    else
  	                    {
  	                    	$.messager.alert('提示',res.msg,'error');
  	                    }
        			},
        	    	error : function() {
        	    		$.messager.alert('error','网络超时，请稍后再试！');
        	    	}
        		});
         }
     });
}

function reloadTree(){
	$.ajax({
		url : "action/action_native_tree.tree",
		type : 'POST',
		dataType : 'json',
		success : function(data) {
			$("#actiontree").tree("loadData",data);
			$("#AParentid").combotree("loadData",data);
		},
		error : function (){
			$.messager.alert('info','网络超时，请稍后再试');
			
		}
	});
}
